package com.rbw.service;

import java.util.List;

import com.rbw.controller.req.TechParam;
import com.rbw.controller.res.ListResult;
import com.rbw.model.IndustryBean;
import com.rbw.model.OriginBean;
import com.rbw.model.TechBean;
import com.rbw.model.TechCategoryBean;
import com.rbw.model.TradeTypeBean;


/**
 * 技术成果业务层
 * 
 *
 */
public interface TechService {
	 
	 /**
	  * 分页获取科技成果
	  * @param page 当前页
	  * @param pageSize 限制
	  * @param origins 来源
	  * @param industries 行业
	  * @param categories 技术类型
	  * @param tradetypes 交易方式
	  * @param sort 排序字段
	  * @param desc 正序。倒序
	 * @param content 搜索关键字
	  * @return
	  */
	 ListResult<TechBean> getLists(String sessionId, Integer page, Integer pageSize, List<String> origins, List<String> industries, List<String> categories, List<String> tradetypes, String sort, String desc, String content);
	 
	 /**
	  * 获取科技成果详情
	  * @param tid
	  * @return
	  */
	 TechBean getDetail(String tid);
	 
	 /**
	  * 获取来源列表
	  * @return
	  */
	 List<OriginBean> getOrigins();
	 
	 /**
	  * 获取技术类型列表
	  * @return
	  */
	 List<TechCategoryBean> getCategories();
	 
	 /**
	  * 获取行业列表
	  * @return
	  */
	 List<IndustryBean> getIndustries();
	 
	 /**
	  * 获取交易方式
	  * @return
	  */
	 List<TradeTypeBean> getTradeType();

	ListResult<TechBean> getUserTechs(String sessionId, int page, int pageSize);

	boolean saveTech(String sessionId, TechParam param);
	 
}
